﻿using Heb2RusEngine;
using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace Heb2RusTests
{
    [TestClass]
    public class AcceptanceTests
    {
        [TestMethod]
        [Ignore]
        public void TestSample_r5gor()
        {
            const string hebrewInput = "יִתְגַּדַּל וְיִתְקַדַּשׁ שְׁמֵהּ רַבָּא";
            const string expectedRussianResult = "итгадаль вейиткадаш шемэ раба";
            Hebrew2RussianTranslit translit = new Hebrew2RussianTranslit();
            string actualRussianResult = translit.ConvertLine(hebrewInput);
            Assert.AreEqual(expectedRussianResult, actualRussianResult);
        }

        [TestMethod]
        [Ignore]
        public void TestSample2_r5gor_1869()
        {
            const string hebrewInput = "אֲשֶׁר קִדְּשָׁנוּ בְּמִצְוֹתָיו, וְצִוָּנוּ עַל מִצְוַת צִיצִית";
            const string expectedRussianResult = "Ашэр кидшану бемицвотав, вецивану аль мицват цицит";
            Hebrew2RussianTranslit translit = new Hebrew2RussianTranslit();
            string actualRussianResult = translit.ConvertLine(hebrewInput);
            Assert.AreEqual(expectedRussianResult, actualRussianResult);
        }

        [TestMethod]
        public void Test_RussianUp()
        {
            string hebrewInput = "שָלוֹם";
            string expectedRussianResult = "Шалом";
            Hebrew2RussianTranslit translit = new Hebrew2RussianTranslit {Statement = new StatementProcessing()};
            string actualRussianResult = translit.ConvertLine(hebrewInput);
            Assert.AreEqual(expectedRussianResult, actualRussianResult);

            hebrewInput = "שָלוֹם, שָלוֹם";
            expectedRussianResult = "Шалом, шалом";
            translit = new Hebrew2RussianTranslit { Statement = new StatementProcessing() };
            actualRussianResult = translit.ConvertLine(hebrewInput);
            Assert.AreEqual(expectedRussianResult, actualRussianResult);

            hebrewInput = "שָלוֹם. שָלוֹם, שָלוֹם";
            expectedRussianResult = "Шалом. Шалом, шалом";
            translit = new Hebrew2RussianTranslit { Statement = new StatementProcessing() };
            actualRussianResult = translit.ConvertLine(hebrewInput);
            Assert.AreEqual(expectedRussianResult, actualRussianResult);
        }
    }
}
